The present invention generally relates to management of computer networks, and relates specifically to managing a network using a network management system.
A computer network generally includes a number of network devices, such as switches, routers, and others, connected so as to allow communication among the devices and end station devices such as desktop machines, servers, hosts, printers, fax machines, and others. Each network device has a processor and a memory; status variables and other values in the memory are continuously changed and updated as the device operates. To monitor the status of a device in the network, a network management station transmits a message requesting information over the network to a software program or agent running on the target device. In response, the agent sends a message over the network to the network management station. The communications are carried out according to an agreed-upon protocol, such as the Simple Network Management Protocol (SNMP).
These networks usually consist of many different types of data switching and routing devices, such as switches, routers, and hubs. Each device can have different physical characteristics. New devices, with characteristics that are presently unknown, are continually developed. In addition, the characteristics of many network devices may change over time. For example, network device characteristics change when subsystems like boards, network interface modules, and other parts are added or removed from a device. In addition, many computer networks contain multiple versions of a particular device type. These multiple versions may themselves have different physical characteristics. For example, one version of a particular routing device may contain 8 megabytes (MB) of random-access memory (RAM) while another version of the same routing device may contain only 6 MBs of RAM.
Because the characteristics and requirements of a computer network often change over time, devices on the network will typically need to be upgraded. In many cases, the upgrading of a device may only require that a new version of software (xe2x80x9cSoftware Upgradexe2x80x9d) be loaded into the device""s memory.
One approach to providing Software Upgrades to customers of certain devices is by maintaining a computer system, such as an online Internet site or World Wide Web site, which can be accessed to download software for upgrading devices on a computer network. For example, a vendor of network equipment can maintain one or more Web pages that list the devices it sells and the corresponding software that is available for each device. A user of a computer network, typically a computer network administrator (xe2x80x9cAdministratorxe2x80x9d), can then connect to the Web page and to manually select certain software to download in order to upgrade the devices on their computer network.
However, one drawback associated with this approach is that a computer network may contain a large number of devices. Thus, the Administrator must keep track of all the different devices that are maintained on the computer network and the particular software that is currently loaded on each of the devices. In addition, because a particular type of device may contain different hardware configurations, the Administrator must track not only the different types of devices on the computer network, but also the particular configuration of each device on the computer network. For example, if routing device A contains 6 MB of Flash memory, but routing device B contains only 4 MB of Flash memory, then a particular Software Upgrade may fit into the Flash memory of device A but not device B. In a large network, it is impractical for an Administrator to remember and account for these details.
In addition to upgrading network devices, the Administrator typically has the responsibility of diagnosing and solving problems that occur with the network. Often, in diagnosing a problem, the Administrator is forced to call a help-line telephone number of the manufacturer of a particular network device. Once connected with a support person, the Administrator describes the problems that have occurred. In many cases, the support person does not have the technical background to provide the help and information that is required by the Administrator. Instead, the support person creates a problem report consisting of their understanding of the problem and then forwards the report to a technician having an appropriate technical background.
Unfortunately, it is often the case that the problem report contains incorrect and/or incomplete diagnostic information. Thus, the technician is not able to provide a feasible solution based on the information contained in the problem report. Accordingly, several more phone calls may be required before a qualified technical person receives the necessary information. In addition, even if a feasible solution is determined, it is often the case that many phone calls are required before the Administrator and a qualified technician are able to contact one another.
Based on the foregoing, there is a clear need for a mechanism that can be used to automate the upgrading of network devices.
In particular, there is a need for a way to convey information about a customer""s particular current network configuration to a manufacturer of one or more of the devices in the network.
In addition, there is also a need to provide a mechanism that can aid in the reporting and diagnosing of network device problems.
One aspect of the invention encompasses a method for automated upgrading of one or more network devices in a managed network. To perform the automated upgrades, network device information from one or more network devices is discovered. The discovered network device information describes one or more network devices of the managed network. For each of the one or more network devices, one or more software components are identified that contains an upgrade for such network device. The one or more software components are verified for compatibility with each corresponding network device and stored in a location that facilitates downloading of the one or more software components to the network devices.
One feature of this aspect includes displaying a view of the one or more software components to a client associated with the managed network.
Another feature of this aspect is that in discovering network device information, a server is connected to the managed network. One or more SNMP messages are issued to the one or more devices whereby information identifying the one or more devices is collected from the managed network.
Yet another feature of this aspect is that in identifying one or more software components, a device type identifier associated with a particular device of the managed network is determined. One or more of the names that are associated with the device type identifier of the particular device are retrieved from a database that associates names of the components with one or more device type identifier values.
Yet another feature of this aspect is that in verifying for compatibility, a minimum amount of memory of the device that is necessary to load the one or more software components into the device is determined. The actual amount of memory in the device is also determined. It is then determined whether the actual amount is equal to or greater than the minimum amount.
Yet another feature of this aspect includes the downloading of the one or more software components to the devices at the predetermined time.
The invention also encompasses a computer-readable medium, a computer data signal embodied in a carrier wave, and an apparatus configured to carry out the foregoing steps.